1. Field of the Invention
The invention relates generally to a system for testing performance of a telephone network echo canceller and, more specifically, to a system for inband testing of an echo canceller.
2. Description of the Prior Art
FIG. 1 is a schematic of a packet-based telephone system 12. A telephone 14 is coupled through a transmission channel 16 to a tail circuit 18. The transmission channel 16 includes a Public Branch Exchange (PBX) 20 that couples the telephone 14 to a voice packet gateway 22 in a packet-switched network 24. Another voice packet gateway 26 at another location in the packet-switched network 24 is connected through a PBX 28 to a telephone 30 in the tail circuit 18.
The telephone 14 is in a first location, such as San Jose, and the telephone 30 is in a second location, such as Montreal. A user of telephone 14 in San Jose may experience an echo problem when connected to the telephone 30 in Montreal. Echo is typically created when the tail circuit 18 in Montreal allows some of the audio signal from a transmission audio path 32 to leak into the audio signal on a return audio path 34. The leaking audio signal in the return audio path 34 is represented by a dotted line 36 and is perceived as echo at the San Jose telephone 14. The echo is produced by impedance mismatches in the telecommunication network. The echo is a function of how much energy is reflected back to the telephone 14 and the time delay between the original signal on audio path 32 and the reflected signal 36 on the return path 34. FIG. 4 illustrates the generally accepted boundary between acceptable and unacceptable echo. As shown in FIG. 4, user perception of echo is aggravated by circuit delay including tail circuit delay and transmission channel delay. The tail circuit 18 represents the electrical equipment, such as PBXs, telephones, microphones, transformers, etc., at the far end of the phone call to the right of the gateway 26. The tail circuit 18 shown in FIG. 1 includes any equipment in Montreal that creates the echo signal 36.
Referring to FIG. 2, the standard solution for eliminating echo is to introduce an echo canceller 38 in the transmission channel 16. In the case of the network shown in FIG. 2, the echo canceller 38 is included in the packet voice gateway 26 on the Montreal end of the tail circuit 18. The echo canceller 38 is controlled by management systems within the gateway 26. Alternatively, the echo canceller 38 is a standalone product.
At a first end, the packet voice gateway 22 converts audio signals from the PBX 28 into voice packets for sending over the packet switched network 24 to gateway 26. At a second end, the packet voice gateway 26 converts voice packets back into audio signals for sending to PBX 28. Echo cancellers are used in both traditional circuit switched networks, such as used in tail circuit 18, and packet switched networks, such as network 24.
The echo canceller 38 eliminates echo by modeling the measured echo on individual voice channels, subtracting the measured echo (echo replica) from the reflected signal, continuously adapting to the echo (convergence), recognizing the difference between echo and speech, and disabling echo cancellation when modems are used. The echo canceller 38 is typically a four-terminal device containing an adaptive Finite Impulse Response (FIR) filter (not shown). The FIR filter starts with zero knowledge about the system it is connected to, in this case, the tail circuit 18. By listening to the transmitted speech signal 32 and the echo signal 36 returning from the tail circuit 18, the adaptive filter in echo canceller 38 dynamically modifies filter coefficients to rapidly form an internal, functional model of the tail circuit 18.
Using this internal recipe, the echo canceller 38 produces a sample by sample estimate of the echo signal 36. This estimated echo signal is subtracted from the real echo signal 36. As the internal model in the echo canceller 38 improves over time in converging on the echo signal 36, attenuation of the echo signal 36 increases. As a result, the echo canceller 38 attenuates the echo signal 36 that normally returns to the phone 14 in San Jose while allowing the audio signal 34 from a talker at phone 30 to pass through.
FIG. 3 represents a traditional echo canceller performance testbed, as described in International Telecommunications Union (ITU) specifications G.165 and G.168. The echo canceller 38 has four audio terminals. A prerecorded test signal 46 generated at excitation source 40 is input to the echo canceller 38 under test. ITU specification G.165 specifies inputting a white noise test signal 46 and ITU specification G.168 employs a variety of different test signals 46 including a pseudo-speech signal. A tail circuit emulator 42 includes a set of parallel audio delay lines 47, 48, and 50 that provide a simple three-reflector model of three different echo delays and associated echo amplitudes. Echo of the speech or noise signal 46 is generated by the tail circuit emulator 42 and fed back into the echo canceller 38. An audio recorder 44 records the level of the returning echo signal 52 allowed to pass through the echo canceller 38.
In both ITU specifications, the performance of the echo canceller 38 is rated on a purely objective standard. The performance of the echo canceller 38 is rated based on a number of parameters including the convergence time required to attenuate the echo signal 52 to a predefined threshold, i.e., the time required to alternate the echo signal to a certain level. In other words, the less echo signal received by the recorder 44, the better the rated performance of the echo canceller 38.
A problem exists when using the G.165 and G.168 standards for measuring echo canceller performance. Implementing the G.165 and G.168 standards require precise control of the echo canceller 38 relative to the generation and transmission of the test signal and subsequent recordation of the returned echo signal 36. For example, the convergence test described in the G.168 standard requires initial clearing of the H-register—adaptive filter coefficients within the echo canceller that store the impulse response model of the echo path- and inhibiting adaptation. Adaptation is then enabled 50 ms before the start of a test signal burst (G.168 standard). In the G.165 standard, adaptation is enabled 500 ms after being disabled and after the test signal 46 is removed.
The test signal 46 is generally input at voice packet gateway 22 a first end of the transmission channel 16. The echo canceller 38, however, is controlled by the voice packet gateway 26—if the echo canceller is part of the gateway 26—at a second end of the transmission channel 16. Accordingly, meeting the strict timing requirements of the G.165 and G.168 standards is difficult because the test signal 46 must travel through uncharacterized and often variable delay paths that do not synchronize with the control of the echo canceller 38. Also, the gateway 26 internal management systems do not have the timing precision required by the G.165 and G.168 standards to configure the echo canceller.
The same problem exists when the echo canceller 38 is a standalone product. This is because control of the stand alone echo canceller 38 resides in its internal management system that is not synchronized with the generation of the test signal 46.
Accordingly a need remains for more effectively testing echo canceller performance.